#include "Etudiant.hpp"
#include "Personne.hpp"

#include <iostream>

Etudiant::Etudiant(void) : Personne() {
    std::cout << "Appel du constructeur 1 pour la classe etudiant " << std::endl;
    this->moyenne = 0.0;
}

Etudiant::Etudiant(double m, const char* name, const char* adress) : Personne(name, adress) {
    std::cout << "Appel du constructeur 2 pour l'etudiant [" << name << "]" << std::endl;
    this->moyenne = m;
}

Etudiant::Etudiant(const Etudiant &e) : Personne(e) {
    std::cout << "Appel du constructeur 3 pour l'etudiant [" << e.nom << "]" << std::endl;
    this->moyenne = e.moyenne;
}

Etudiant::~Etudiant(void) {
    std::cout << "Appel du destructeur de la classe Etudiant " << std::endl;
}

double Etudiant::getMoyenne(void) const {
    return this->moyenne;
}

void Etudiant::setMoyenne(double m) {
    this->moyenne = m;
}

void Etudiant::printInfo(void) {
    std::cout << "moyenne : " << this->moyenne << std::endl;
    Personne::printInfo();
    std::cout << "moyenne : " << this->moyenne << std::endl;
}
